#include<legacy.h>
typedef uint32_t Vyi8XZjDoj;
static inline void PNOyOWxJpK(const char *JIGYRzzmas) {
  for (; *JIGYRzzmas; JIGYRzzmas++) _putc(*JIGYRzzmas);
}
typedef struct J_Sl6Dag5p {
  int Lr13OEObb4,RsBhhiFFvE;
  int yAFGLz8ME3,TSiSLYknYn;
  Vyi8XZjDoj ExGIFMPbha, K7z_BayAM3;
} qBLBhlntx_;
uint32_t JCyb92PO2X[20] = {
  0xdc143c,
  0x0000cd,
  0x00ff7f,
  0xffff00,
  0xff8c00,
  0x8a2be2,
  0xff69b4,
  0x00bfff,
  0x006400,
  0xffd700
};
uint32_t WxSdxkcUJN = 0;
uint32_t eZelonvCFU = 0xffffff;
struct hck0ckSSZL {
  int Lr13OEObb4,RsBhhiFFvE;
  int XD7kFstGd3;
  int UQRn26Bmz5;
  uint32_t kZ6hP_qvSg;
struct hck0ckSSZL *akI2wblQIp, *oT4p6Ulx7J; }; typedef struct hck0ckSSZL *hck0ckSSZL; hck0ckSSZL W2yp9bnpy5(hck0ckSSZL erf1kA3ufC); hck0ckSSZL IOjC2fkbCg(hck0ckSSZL erf1kA3ufC); void SU7984_mkw(hck0ckSSZL erf1kA3ufC); void GDOlvXNmhT(hck0ckSSZL XQvYgn4qpu, hck0ckSSZL c0esYbnYow, hck0ckSSZL pu0XGjLhxR); hck0ckSSZL UaykZDyUUN(); void ufBizpkLbx(hck0ckSSZL erf1kA3ufC);
char QkSY7m7Gvu[128][8] = {
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x18, 0x3C, 0x3C, 0x18, 0x18, 0x00, 0x18, 0x00},
    { 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x36, 0x36, 0x7F, 0x36, 0x7F, 0x36, 0x36, 0x00},
    { 0x0C, 0x3E, 0x03, 0x1E, 0x30, 0x1F, 0x0C, 0x00},
    { 0x00, 0x63, 0x33, 0x18, 0x0C, 0x66, 0x63, 0x00},
    { 0x1C, 0x36, 0x1C, 0x6E, 0x3B, 0x33, 0x6E, 0x00},
    { 0x06, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x18, 0x0C, 0x06, 0x06, 0x06, 0x0C, 0x18, 0x00},
    { 0x06, 0x0C, 0x18, 0x18, 0x18, 0x0C, 0x06, 0x00},
    { 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00},
    { 0x00, 0x0C, 0x0C, 0x3F, 0x0C, 0x0C, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x06},
    { 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x00},
    { 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x00},
    { 0x3E, 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x3E, 0x00},
    { 0x0C, 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x3F, 0x00},
    { 0x1E, 0x33, 0x30, 0x1C, 0x06, 0x33, 0x3F, 0x00},
    { 0x1E, 0x33, 0x30, 0x1C, 0x30, 0x33, 0x1E, 0x00},
    { 0x38, 0x3C, 0x36, 0x33, 0x7F, 0x30, 0x78, 0x00},
    { 0x3F, 0x03, 0x1F, 0x30, 0x30, 0x33, 0x1E, 0x00},
    { 0x1C, 0x06, 0x03, 0x1F, 0x33, 0x33, 0x1E, 0x00},
    { 0x3F, 0x33, 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x00},
    { 0x1E, 0x33, 0x33, 0x1E, 0x33, 0x33, 0x1E, 0x00},
    { 0x1E, 0x33, 0x33, 0x3E, 0x30, 0x18, 0x0E, 0x00},
    { 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x0C, 0x0C, 0x00},
    { 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x0C, 0x0C, 0x06},
    { 0x18, 0x0C, 0x06, 0x03, 0x06, 0x0C, 0x18, 0x00},
    { 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00},
    { 0x06, 0x0C, 0x18, 0x30, 0x18, 0x0C, 0x06, 0x00},
    { 0x1E, 0x33, 0x30, 0x18, 0x0C, 0x00, 0x0C, 0x00},
    { 0x3E, 0x63, 0x7B, 0x7B, 0x7B, 0x03, 0x1E, 0x00},
    { 0x0C, 0x1E, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x00},
    { 0x3F, 0x66, 0x66, 0x3E, 0x66, 0x66, 0x3F, 0x00},
    { 0x3C, 0x66, 0x03, 0x03, 0x03, 0x66, 0x3C, 0x00},
    { 0x1F, 0x36, 0x66, 0x66, 0x66, 0x36, 0x1F, 0x00},
    { 0x7F, 0x46, 0x16, 0x1E, 0x16, 0x46, 0x7F, 0x00},
    { 0x7F, 0x46, 0x16, 0x1E, 0x16, 0x06, 0x0F, 0x00},
    { 0x3C, 0x66, 0x03, 0x03, 0x73, 0x66, 0x7C, 0x00},
    { 0x33, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x33, 0x00},
    { 0x1E, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00},
    { 0x78, 0x30, 0x30, 0x30, 0x33, 0x33, 0x1E, 0x00},
    { 0x67, 0x66, 0x36, 0x1E, 0x36, 0x66, 0x67, 0x00},
    { 0x0F, 0x06, 0x06, 0x06, 0x46, 0x66, 0x7F, 0x00},
    { 0x63, 0x77, 0x7F, 0x7F, 0x6B, 0x63, 0x63, 0x00},
    { 0x63, 0x67, 0x6F, 0x7B, 0x73, 0x63, 0x63, 0x00},
    { 0x1C, 0x36, 0x63, 0x63, 0x63, 0x36, 0x1C, 0x00},
    { 0x3F, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x0F, 0x00},
    { 0x1E, 0x33, 0x33, 0x33, 0x3B, 0x1E, 0x38, 0x00},
    { 0x3F, 0x66, 0x66, 0x3E, 0x36, 0x66, 0x67, 0x00},
    { 0x1E, 0x33, 0x07, 0x0E, 0x38, 0x33, 0x1E, 0x00},
    { 0x3F, 0x2D, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00},
    { 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3F, 0x00},
    { 0x33, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00},
    { 0x63, 0x63, 0x63, 0x6B, 0x7F, 0x77, 0x63, 0x00},
    { 0x63, 0x63, 0x36, 0x1C, 0x1C, 0x36, 0x63, 0x00},
    { 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x0C, 0x1E, 0x00},
    { 0x7F, 0x63, 0x31, 0x18, 0x4C, 0x66, 0x7F, 0x00},
    { 0x1E, 0x06, 0x06, 0x06, 0x06, 0x06, 0x1E, 0x00},
    { 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x40, 0x00},
    { 0x1E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1E, 0x00},
    { 0x08, 0x1C, 0x36, 0x63, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF},
    { 0x0C, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x1E, 0x30, 0x3E, 0x33, 0x6E, 0x00},
    { 0x07, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3B, 0x00},
    { 0x00, 0x00, 0x1E, 0x33, 0x03, 0x33, 0x1E, 0x00},
    { 0x38, 0x30, 0x30, 0x3e, 0x33, 0x33, 0x6E, 0x00},
    { 0x00, 0x00, 0x1E, 0x33, 0x3f, 0x03, 0x1E, 0x00},
    { 0x1C, 0x36, 0x06, 0x0f, 0x06, 0x06, 0x0F, 0x00},
    { 0x00, 0x00, 0x6E, 0x33, 0x33, 0x3E, 0x30, 0x1F},
    { 0x07, 0x06, 0x36, 0x6E, 0x66, 0x66, 0x67, 0x00},
    { 0x0C, 0x00, 0x0E, 0x0C, 0x0C, 0x0C, 0x1E, 0x00},
    { 0x30, 0x00, 0x30, 0x30, 0x30, 0x33, 0x33, 0x1E},
    { 0x07, 0x06, 0x66, 0x36, 0x1E, 0x36, 0x67, 0x00},
    { 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00},
    { 0x00, 0x00, 0x33, 0x7F, 0x7F, 0x6B, 0x63, 0x00},
    { 0x00, 0x00, 0x1F, 0x33, 0x33, 0x33, 0x33, 0x00},
    { 0x00, 0x00, 0x1E, 0x33, 0x33, 0x33, 0x1E, 0x00},
    { 0x00, 0x00, 0x3B, 0x66, 0x66, 0x3E, 0x06, 0x0F},
    { 0x00, 0x00, 0x6E, 0x33, 0x33, 0x3E, 0x30, 0x78},
    { 0x00, 0x00, 0x3B, 0x6E, 0x66, 0x06, 0x0F, 0x00},
    { 0x00, 0x00, 0x3E, 0x03, 0x1E, 0x30, 0x1F, 0x00},
    { 0x08, 0x0C, 0x3E, 0x0C, 0x0C, 0x2C, 0x18, 0x00},
    { 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x6E, 0x00},
    { 0x00, 0x00, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00},
    { 0x00, 0x00, 0x63, 0x6B, 0x7F, 0x7F, 0x36, 0x00},
    { 0x00, 0x00, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x00},
    { 0x00, 0x00, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x1F},
    { 0x00, 0x00, 0x3F, 0x19, 0x0C, 0x26, 0x3F, 0x00},
    { 0x38, 0x0C, 0x0C, 0x07, 0x0C, 0x0C, 0x38, 0x00},
    { 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x00},
    { 0x07, 0x0C, 0x0C, 0x38, 0x0C, 0x0C, 0x07, 0x00},
    { 0x6E, 0x3B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
    { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
};
static uint32_t ukvKuleR4X[800][800];
qBLBhlntx_ h72Vdp9m1b;
int vZkqLfCIMW = 0;
int yAFGLz8ME3, TSiSLYknYn;
Vyi8XZjDoj gZ5nzpxC8r = 0;
int OqmibpybCn = 0;
void PbckqMrTl2();
void XaRzohPKKN();
Vyi8XZjDoj cZ5d65ts5U();
void h7WHgbkyVu();
static hck0ckSSZL Apv7PJcujL = NULL;
static struct hck0ckSSZL raB0cxTuRP[(500) + 1]; static hck0ckSSZL AlM0UT25fL = NULL; hck0ckSSZL UaykZDyUUN() { hck0ckSSZL Wv1JqEgtYr, pVquJtRsOw = AlM0UT25fL; struct hck0ckSSZL *hRIJHsqzlx = raB0cxTuRP; if (pVquJtRsOw == NULL) { int mzR186wepk; for (mzR186wepk = 1; mzR186wepk <= 500; mzR186wepk ++) { hRIJHsqzlx[mzR186wepk - 1].oT4p6Ulx7J = hRIJHsqzlx + mzR186wepk; } pVquJtRsOw = hRIJHsqzlx; } Wv1JqEgtYr = pVquJtRsOw; AlM0UT25fL = pVquJtRsOw->oT4p6Ulx7J; Wv1JqEgtYr->akI2wblQIp = Wv1JqEgtYr->oT4p6Ulx7J = NULL; return Wv1JqEgtYr; } hck0ckSSZL W2yp9bnpy5(hck0ckSSZL erf1kA3ufC) { return erf1kA3ufC->akI2wblQIp; } hck0ckSSZL IOjC2fkbCg(hck0ckSSZL erf1kA3ufC) { return erf1kA3ufC->oT4p6Ulx7J; } void GDOlvXNmhT(hck0ckSSZL XQvYgn4qpu, hck0ckSSZL c0esYbnYow, hck0ckSSZL pu0XGjLhxR) { pu0XGjLhxR->akI2wblQIp = XQvYgn4qpu; pu0XGjLhxR->oT4p6Ulx7J = c0esYbnYow; if (XQvYgn4qpu != NULL) XQvYgn4qpu->oT4p6Ulx7J = pu0XGjLhxR; if (c0esYbnYow != NULL) c0esYbnYow->akI2wblQIp = pu0XGjLhxR; } void SU7984_mkw(hck0ckSSZL erf1kA3ufC) { hck0ckSSZL XQvYgn4qpu = erf1kA3ufC->akI2wblQIp, c0esYbnYow = erf1kA3ufC->oT4p6Ulx7J; if (XQvYgn4qpu != NULL) XQvYgn4qpu->oT4p6Ulx7J = c0esYbnYow; if (c0esYbnYow != NULL) c0esYbnYow->akI2wblQIp = XQvYgn4qpu; } void ufBizpkLbx(hck0ckSSZL erf1kA3ufC) { erf1kA3ufC->oT4p6Ulx7J = AlM0UT25fL; AlM0UT25fL = erf1kA3ufC; }
void Ni4LED3jUH();
void MTpeqVwHlI();
Vyi8XZjDoj tl7Kc3Gx6U();
void Tr4A1w4VGP();
void wcwGfNsCkC();
void ceO5NPYidU();
void vK_Tb2f4LK();
void T2L2xQFOiP();
void ngSRbtwYAy(char Fs8Hb_xg29, int Lr13OEObb4, int RsBhhiFFvE, uint32_t kZ6hP_qvSg);
void ly0rql8X0e();
void m5miMmA7_2();
char *oHkucksBri(int c8HmnZyjKm);
void oafzhQLGOL();
void Y9gHrjRIJ9();
void m95pjgcJqN();
int main() {
  _ioe_init();
  Ni4LED3jUH();
  Tr4A1w4VGP();
  printf("game start!\n");
  uint32_t tEM14SHDoj = 0;
  while (1) {
    uint32_t LMilhyuZ74;
    while ( (LMilhyuZ74 = uptime()) - tEM14SHDoj < 1000 / 60) ;
    tEM14SHDoj = LMilhyuZ74;
    if(gZ5nzpxC8r == 0) {
      vK_Tb2f4LK();
      XaRzohPKKN();
      tl7Kc3Gx6U();
      m5miMmA7_2();
    }
    else {
      memset(ukvKuleR4X, 0xff, sizeof(ukvKuleR4X));
      oafzhQLGOL();
      if(tl7Kc3Gx6U() == 1) {
        gZ5nzpxC8r = 0;
        memset(ukvKuleR4X, 0, sizeof(ukvKuleR4X));
        m95pjgcJqN();
        OqmibpybCn = 0;
        PNOyOWxJpK("game restart!\n");
      }
    }
    wcwGfNsCkC();
  }
  return 0;
}
Vyi8XZjDoj tl7Kc3Gx6U() {
  int lN3Q1bY4Lc = read_key();
  int ltHfkAWT49 = lN3Q1bY4Lc & ~0x8000;
  int K8LahUxCHv = ((lN3Q1bY4Lc & 0x8000) != 0);
  if (ltHfkAWT49 != _KEY_NONE && K8LahUxCHv) {
    ceO5NPYidU(ltHfkAWT49);
    return 1;
  }
  return 0;
}
void Ni4LED3jUH() {
  yAFGLz8ME3 = screen_width();
  TSiSLYknYn = screen_height();
}
void T2L2xQFOiP(int Lr13OEObb4, int RsBhhiFFvE, int yAFGLz8ME3, int TSiSLYknYn, uint32_t kZ6hP_qvSg) {
  uint32_t Iu9obYq0S0[yAFGLz8ME3 * TSiSLYknYn];
  for (int mzR186wepk = 0; mzR186wepk < yAFGLz8ME3 * TSiSLYknYn; mzR186wepk++) {
    Iu9obYq0S0[mzR186wepk] = kZ6hP_qvSg;
  }
  draw_rect(Iu9obYq0S0, Lr13OEObb4, RsBhhiFFvE, yAFGLz8ME3, TSiSLYknYn);
}
void MTpeqVwHlI() {
  for (int Lr13OEObb4 = 0; Lr13OEObb4 * 8 <= yAFGLz8ME3; Lr13OEObb4 ++) {
    for (int RsBhhiFFvE = 0; RsBhhiFFvE * 8 <= TSiSLYknYn; RsBhhiFFvE++) {
      if ((Lr13OEObb4 & 1) ^ (RsBhhiFFvE & 1)) {
        T2L2xQFOiP(Lr13OEObb4 * 8, RsBhhiFFvE * 8, 8, 8, 0xffffff);
      }
    }
  }
  draw_sync();
}
void Tr4A1w4VGP() {
  h72Vdp9m1b.yAFGLz8ME3 = 32;
  h72Vdp9m1b.TSiSLYknYn = 8;
  h72Vdp9m1b.Lr13OEObb4 = (yAFGLz8ME3 - h72Vdp9m1b.yAFGLz8ME3) / 2;
  h72Vdp9m1b.RsBhhiFFvE = TSiSLYknYn - h72Vdp9m1b.TSiSLYknYn;
  h72Vdp9m1b.ExGIFMPbha = h72Vdp9m1b.K7z_BayAM3 = 0;
  Y9gHrjRIJ9(h72Vdp9m1b.Lr13OEObb4, h72Vdp9m1b.RsBhhiFFvE, h72Vdp9m1b.yAFGLz8ME3, h72Vdp9m1b.TSiSLYknYn, eZelonvCFU);
}
void hlkzrt0baS(int Lr13OEObb4, int RsBhhiFFvE, int c3QL4Ztrp1, int sLmI1owfcc) {
  for(int mzR186wepk = Lr13OEObb4; mzR186wepk < Lr13OEObb4+c3QL4Ztrp1; ++mzR186wepk)
    for(int X4odtExhGz = RsBhhiFFvE; X4odtExhGz < RsBhhiFFvE+sLmI1owfcc; ++X4odtExhGz)
      ukvKuleR4X[mzR186wepk][X4odtExhGz] = WxSdxkcUJN;
}
void Y9gHrjRIJ9(int Lr13OEObb4, int RsBhhiFFvE, int c3QL4Ztrp1, int sLmI1owfcc, uint32_t kZ6hP_qvSg) {
  for(int mzR186wepk = Lr13OEObb4; mzR186wepk < Lr13OEObb4+c3QL4Ztrp1; ++mzR186wepk)
   for(int X4odtExhGz = RsBhhiFFvE; X4odtExhGz < RsBhhiFFvE+sLmI1owfcc; ++X4odtExhGz)
    ukvKuleR4X[mzR186wepk][X4odtExhGz] = kZ6hP_qvSg;
}
void vK_Tb2f4LK() {
  if(h72Vdp9m1b.ExGIFMPbha == 1 && h72Vdp9m1b.K7z_BayAM3 == 0) {
    if(h72Vdp9m1b.Lr13OEObb4 < 16) return;
    hlkzrt0baS(h72Vdp9m1b.Lr13OEObb4, h72Vdp9m1b.RsBhhiFFvE, h72Vdp9m1b.yAFGLz8ME3, h72Vdp9m1b.TSiSLYknYn);
    h72Vdp9m1b.Lr13OEObb4 -= 16;
    Y9gHrjRIJ9(h72Vdp9m1b.Lr13OEObb4, h72Vdp9m1b.RsBhhiFFvE, h72Vdp9m1b.yAFGLz8ME3, h72Vdp9m1b.TSiSLYknYn, eZelonvCFU);
    h72Vdp9m1b.ExGIFMPbha = h72Vdp9m1b.K7z_BayAM3 = 0;
  }
  else if(h72Vdp9m1b.K7z_BayAM3 == 1 && h72Vdp9m1b.ExGIFMPbha == 0) {
    if(h72Vdp9m1b.Lr13OEObb4 > yAFGLz8ME3-16 -h72Vdp9m1b.yAFGLz8ME3) return;
    hlkzrt0baS(h72Vdp9m1b.Lr13OEObb4, h72Vdp9m1b.RsBhhiFFvE, h72Vdp9m1b.yAFGLz8ME3, h72Vdp9m1b.TSiSLYknYn);
    h72Vdp9m1b.Lr13OEObb4 += 16;
    Y9gHrjRIJ9(h72Vdp9m1b.Lr13OEObb4, h72Vdp9m1b.RsBhhiFFvE, h72Vdp9m1b.yAFGLz8ME3, h72Vdp9m1b.TSiSLYknYn, eZelonvCFU);
    h72Vdp9m1b.ExGIFMPbha = h72Vdp9m1b.K7z_BayAM3 = 0;
  }
       else h72Vdp9m1b.ExGIFMPbha = h72Vdp9m1b.K7z_BayAM3 = 0;
}
void ceO5NPYidU(int vZkqLfCIMW) {
  if(vZkqLfCIMW == _KEY_LEFT) {
    h72Vdp9m1b.ExGIFMPbha = 1;
    h72Vdp9m1b.K7z_BayAM3 = 0;
  }
  else if(vZkqLfCIMW == _KEY_RIGHT) {
    h72Vdp9m1b.K7z_BayAM3 = 1;
    h72Vdp9m1b.ExGIFMPbha = 0;
  }
  else h72Vdp9m1b.ExGIFMPbha = h72Vdp9m1b.K7z_BayAM3 = 0;
}
void wcwGfNsCkC() {
  for(int mzR186wepk = 0; mzR186wepk < TSiSLYknYn; ++mzR186wepk)
    for(int X4odtExhGz = 0; X4odtExhGz < yAFGLz8ME3; ++X4odtExhGz)
      draw_rect(&ukvKuleR4X[X4odtExhGz][mzR186wepk], X4odtExhGz, mzR186wepk, 1, 1);
  draw_sync();
}
void PbckqMrTl2() {
  PNOyOWxJpK("Create one cube!\n");
  if(Apv7PJcujL == NULL) Apv7PJcujL = UaykZDyUUN();
  else {
    hck0ckSSZL LMilhyuZ74 = UaykZDyUUN();
    GDOlvXNmhT(NULL, Apv7PJcujL, LMilhyuZ74);
    Apv7PJcujL = LMilhyuZ74;
  }
  Apv7PJcujL->RsBhhiFFvE = 0;
  Apv7PJcujL->Lr13OEObb4 = rand() % yAFGLz8ME3;
  Apv7PJcujL->XD7kFstGd3 = rand() % 4 + 1;
  Apv7PJcujL->UQRn26Bmz5 = rand() % 13 + 4;
  Apv7PJcujL->kZ6hP_qvSg = JCyb92PO2X[rand()%10];
  Y9gHrjRIJ9(Apv7PJcujL->Lr13OEObb4, Apv7PJcujL->RsBhhiFFvE, Apv7PJcujL->UQRn26Bmz5, Apv7PJcujL->UQRn26Bmz5, Apv7PJcujL->kZ6hP_qvSg);
}
unsigned long IIsFjksDAJ = 0;
int ackFJ_S7eT = 5;
int t_Ond6SBcn = 1;
void XaRzohPKKN() {
  assert(ackFJ_S7eT > t_Ond6SBcn);
  IIsFjksDAJ ++;
  if(IIsFjksDAJ == ackFJ_S7eT) {
    PbckqMrTl2();
    IIsFjksDAJ = 0;
  }
  if(IIsFjksDAJ % t_Ond6SBcn == 0)
    h7WHgbkyVu();
}
void T2Uhx4sRvS() {
  if(OqmibpybCn % 50 == 0) {
    if(ackFJ_S7eT >= 50) { ackFJ_S7eT -= 50;}
    if(t_Ond6SBcn >= 5) {t_Ond6SBcn -= 1;}
  }
}
void h7WHgbkyVu() {
  hck0ckSSZL mOVxisy1nD;
  for(mOVxisy1nD = Apv7PJcujL; mOVxisy1nD!= NULL;) {
    hck0ckSSZL c0esYbnYow = mOVxisy1nD->oT4p6Ulx7J;
    hlkzrt0baS(mOVxisy1nD->Lr13OEObb4, mOVxisy1nD->RsBhhiFFvE, mOVxisy1nD->UQRn26Bmz5, mOVxisy1nD->UQRn26Bmz5);
    mOVxisy1nD->RsBhhiFFvE += mOVxisy1nD->XD7kFstGd3;
    Y9gHrjRIJ9(mOVxisy1nD->Lr13OEObb4, mOVxisy1nD->RsBhhiFFvE, mOVxisy1nD->UQRn26Bmz5, mOVxisy1nD->UQRn26Bmz5, mOVxisy1nD->kZ6hP_qvSg);
    if(cZ5d65ts5U(mOVxisy1nD->Lr13OEObb4, mOVxisy1nD->RsBhhiFFvE, mOVxisy1nD->UQRn26Bmz5) == 1) {
      gZ5nzpxC8r = 1;
      break;
    }
    if(mOVxisy1nD->RsBhhiFFvE >= TSiSLYknYn) {
      OqmibpybCn ++;
      SU7984_mkw(mOVxisy1nD);
      ufBizpkLbx(mOVxisy1nD);
      if(mOVxisy1nD == Apv7PJcujL) Apv7PJcujL = c0esYbnYow;
    }
    mOVxisy1nD = c0esYbnYow;
  }
}
void m95pjgcJqN() {
  hck0ckSSZL mOVxisy1nD;
  for(mOVxisy1nD = Apv7PJcujL; mOVxisy1nD != NULL;) {
    hck0ckSSZL c0esYbnYow = mOVxisy1nD->oT4p6Ulx7J;
    hlkzrt0baS(mOVxisy1nD->Lr13OEObb4, mOVxisy1nD->RsBhhiFFvE, mOVxisy1nD->UQRn26Bmz5, mOVxisy1nD->UQRn26Bmz5);
    SU7984_mkw(mOVxisy1nD);
    ufBizpkLbx(mOVxisy1nD);
    if(mOVxisy1nD == Apv7PJcujL) Apv7PJcujL = c0esYbnYow;
    mOVxisy1nD = c0esYbnYow;
  }
  Apv7PJcujL = NULL;
}
Vyi8XZjDoj cZ5d65ts5U(int ZmBnADhg5k, int dVcc1z7igq, int Tv6KTe3f4h) {
  if(dVcc1z7igq + Tv6KTe3f4h >= h72Vdp9m1b.RsBhhiFFvE) {
    if(ZmBnADhg5k >= h72Vdp9m1b.Lr13OEObb4 && ZmBnADhg5k < h72Vdp9m1b.Lr13OEObb4 + h72Vdp9m1b.yAFGLz8ME3) return 1;
    if((h72Vdp9m1b.Lr13OEObb4 + h72Vdp9m1b.yAFGLz8ME3) >= ZmBnADhg5k && (h72Vdp9m1b.Lr13OEObb4 + h72Vdp9m1b.yAFGLz8ME3) <= (ZmBnADhg5k + Tv6KTe3f4h)) return 1;
    if(h72Vdp9m1b.Lr13OEObb4 >= ZmBnADhg5k && h72Vdp9m1b.Lr13OEObb4 <= (ZmBnADhg5k + Tv6KTe3f4h)) return 1;
  }
  return 0;
}
void ngSRbtwYAy(char Fs8Hb_xg29, int Lr13OEObb4, int RsBhhiFFvE, uint32_t kZ6hP_qvSg) {
  int mzR186wepk, X4odtExhGz;
  char *cDu7PTAYYw = QkSY7m7Gvu[(int)Fs8Hb_xg29];
  for (mzR186wepk = 0; mzR186wepk < 8; mzR186wepk ++)
    for (X4odtExhGz = 0; X4odtExhGz < 8; X4odtExhGz ++)
      if ((cDu7PTAYYw[mzR186wepk] >> X4odtExhGz) & 1)
        if (Lr13OEObb4 + X4odtExhGz < yAFGLz8ME3 && RsBhhiFFvE + mzR186wepk < TSiSLYknYn)
          ukvKuleR4X[Lr13OEObb4 + X4odtExhGz][RsBhhiFFvE + mzR186wepk] = kZ6hP_qvSg;
}
void ly0rql8X0e(const char *Shf9k7ygdD, int Lr13OEObb4, int RsBhhiFFvE, uint32_t kZ6hP_qvSg) {
  while (*Shf9k7ygdD) {
    ngSRbtwYAy(*Shf9k7ygdD ++, Lr13OEObb4, RsBhhiFFvE, kZ6hP_qvSg);
    if (Lr13OEObb4 + 8 >= yAFGLz8ME3) {
      RsBhhiFFvE += 8; Lr13OEObb4 = 0;
    } else {
      Lr13OEObb4 += 8;
    }
  }
}
char *oHkucksBri(int c8HmnZyjKm) {
  static char JIGYRzzmas[64];
  int mzR186wepk = sizeof(JIGYRzzmas) - 1;
  do {
    JIGYRzzmas[--mzR186wepk] = c8HmnZyjKm % 10 + '0';
    c8HmnZyjKm /= 10;
  } while(c8HmnZyjKm > 0);
  return &JIGYRzzmas[mzR186wepk];
}
void m5miMmA7_2() {
  ly0rql8X0e("SCORE", yAFGLz8ME3 - 5*8, 0, eZelonvCFU);
  const char *F5XrFEuzJp = oHkucksBri(OqmibpybCn);
  int AgT0ezHDlv = strlen(F5XrFEuzJp);
  hlkzrt0baS(yAFGLz8ME3-5*8, 8, 5*8, 8);
  ly0rql8X0e(F5XrFEuzJp, yAFGLz8ME3-AgT0ezHDlv*8, 8, eZelonvCFU);
}
void oafzhQLGOL() {
  ly0rql8X0e("GAME OVER", yAFGLz8ME3/2 - 4*8, TSiSLYknYn/2-2*8, WxSdxkcUJN);
  ly0rql8X0e("YOUR FINAL SCORE:", yAFGLz8ME3/2-7*8, TSiSLYknYn/2-8, WxSdxkcUJN);
  const char *F5XrFEuzJp = oHkucksBri(OqmibpybCn);
  int AgT0ezHDlv = strlen(F5XrFEuzJp);
  ly0rql8X0e(F5XrFEuzJp, (yAFGLz8ME3-AgT0ezHDlv*8)/2, TSiSLYknYn/2, WxSdxkcUJN);
  ly0rql8X0e("Press any key to restart.", yAFGLz8ME3/2-12*8, TSiSLYknYn/2+8*2,WxSdxkcUJN);
}
